//
//  LYMViewAnimation.h
//  LYMViewAnimation
//
//  Created by lim on 2019/6/4.
//  Copyright © 2019年 lim. All rights reserved.
//

#import <UIKit/UIKit.h>
#import <Foundation/Foundation.h>

#define kLYMViewAnimation [LYMViewAnimation shareLYMViewAnimation]

NS_ASSUME_NONNULL_BEGIN

/** 颜色类型 */
typedef NS_ENUM(NSInteger, LYMColorType) {
  LYMColorTypeCustom = 0,
  LYMColorTypeGradient,
};

/** 动画类型 */
typedef NS_ENUM(NSInteger, LYMAnimationType) {
    LYMAnimationTypeNormal  = 0,
    LYMAnimationTypeTop,
    LYMAnimationTypeLeft,
    LYMAnimationTypeBottom,
    LYMAnimationTypeRight,
    LYMAnimationTypeAlert,
    LYMAnimationTypeActionSheet,
    LYMAnimationTypeZoom,
};

@interface LYMAnimationConfig : NSObject
/** 点击蒙版是否消失 默认yes */
@property (nonatomic, assign) BOOL lym_IsMaskViewClickDiss;
/** 蒙版颜色 默认blackColor */
@property (nonatomic, strong) UIColor *lym_MaskViewColor;
/** 颜色类型 默认LYMColorTypeGradient */
@property (nonatomic, assign) LYMColorType lym_MaskColorType;
/** 动画类型 默认LYMAnimationTypeNormal */
@property (nonatomic, assign) LYMAnimationType lym_AnimationType;
/** 显示视图背景颜色 默认blueColor */
@property (nonatomic, strong) UIColor *lym_BackColor;
/** 是否需要投影 默认NO */
@property (nonatomic, assign) BOOL lym_IsShadow;
/** 显示视图颜色 默认whiteColor */
@property (nonatomic, strong) UIColor *lym_ShowViewColor;
@end

@interface LYMViewAnimation : UIView

+ (LYMViewAnimation *)shareLYMViewAnimation;
- (void)lym_ShowPresentView:(UIView *)view withConfg:(LYMAnimationConfig *)config;
- (void)lym_closeWithComplete:(void(^)(void))complete;

@end

NS_ASSUME_NONNULL_END
